Title: Year 12 / Computer Science / Practical / 12 - Software Development / 12.1 - Program Development Life cycle

Q: State the 5 stages of the program development life cycle
A: analysis, design, coding, testing, maintenance

Q: Describe the analysis stage of the program development life cycle
A: problem is defined and investigated, feasibility study is carried out, program specification document is created including input, process, output and UI, a solution(s) is planned, most appropriate solution chosen

Q: Describe the design stage of the program development life cycle
A: identifier table created, logic plan developed, algorithm is planned using pseudocode, flowcharts and structure charts, program split into modules

Q: Describe the coding stage of the program development life cycle
A: choosing a suitable high level programming language, then writing code for the algorithm, and producing a UI with executable processes

Q: Describe the testing stage of the program development life cycle
A: testing strategies used to ensure programs works as stated in specification, syntax, logic and run time errors eliminated, dry runs, test plans and trace tables are created, some errors only appear when translating with interpreter or compiler

Q: Describe the maintenance stage of the program development life cycle
A: done once program is in full operation, ensures it continues to work correctly, deals with software upgrades, bug fixes and repairs, provides education and support to end user

Q: Describe the 2 ways that can be used to solve problems in the analysis stage
A: top down, stepwise refinement using pseudocode, flowcharts and structure charts,
bottom up, small sub problem is built on

Q: Describe the principles of the waterfall model
A: linear, sequential model of development, each stage is completed and signed off before the next stage begins, fully documented at each stage

Q: Describe the principles of the iterative model
A: development starts with small subset of program requirements, repeated reviews used to identify further requirements until complete program is made

Q: Describe the principles of the rapid application development model
A: developing different parts of the program in parallel by teams of programmers, uses prototyping and high customer involvement